package com.jr.service;

import com.jr.entry.Enterprise;
import com.jr.entry.Posts;
import com.jr.entry.User;
import com.jr.pojo.*;

import java.util.ArrayList;
import java.util.Map;

public interface PostsService {
    /**
     * 查所有职位，用于首页职位查询
     * @return
     */
   PageMyPots  selectAllPosts(Map<String, Object> params, int page, int pageSize);

    /**
     * 查所有职位或按名称查，用于首页职位查询
     * @return
     */
    PageMyPots selectAllPosts(String pname, int page, int pageSize);

    /**
     * 高薪职位列表
     * @return
     */
    ArrayList<HighSalInformation> selectHighSalInformation();

    /**
     * 我的职位页面，职位显示可按名查
     * @return
     */
    ArrayList<MyPosts> selectUserAndPost(UserAndPos userAndPos);

    /**
     * 职位信息展示（职位详情）
     * @param posts
     * @return
     */
    ArrayList<Posts> showPosts(Posts posts);

    /**
     * 根据企业查找企业招聘的职位信息，用于企业职位显示
     * @param enterprise
     * @return
     */
    ArrayList<EnterprisePostList> showEnterprisePostList(Enterprise enterprise);

    /**
     * 根据职位名查找职务信息
     * @param pname
     * @return
     */
    Posts selectPotsByPname(String pname);
    /**
     * 查看用户是否对该职位进行申请
     * @return
     */
     Boolean astatus(Map<String, Object> params);

    /**
     * 在单个职务展示界面
     * 添加申请关系
     * @return
     */
     Boolean addastatus(Map<String, Object> params);

    /**
     * 根据用户电话查用户id
     * @return
     */
    Integer selectId(String phone);

    /**
     * 查询个数方法：
     * @param params 查看一共查到多少信息查的是mypots的个数
     * @return
     */
    int countAllPosts(Map<String, Object> params);
}
